package br.com.rhweb.util;

/**
 * Reenviando 2.0
 */

import java.util.Calendar;
import java.util.Date;

import org.hibernate.Session;
import org.hibernate.Transaction;

import br.com.rhweb.fachada.Fachada;
import br.com.rhweb.hibernate.HibernateUtil;
import br.com.rhweb.modelos.Parametros_do_Sistema;

public class Contador_de_Autenticacoes {

	private Parametros_do_Sistema parametros_do_Sistema = new Parametros_do_Sistema(); 

	public Parametros_do_Sistema verificador(Date dt, Session s) {
		Fachada fachada = Fachada.obterInstancia();
		parametros_do_Sistema = fachada.procurar_parametros_do_sistema(dt, s);
		if (parametros_do_Sistema.getUltimo_atendimento() < parametros_do_Sistema
				.getQuatidade_de_atendimentos()) {
			parametros_do_Sistema.setUltimo_atendimento(parametros_do_Sistema
					.getUltimo_atendimento() + 1);
			fachada.atualizar_parametros_do_sistema(parametros_do_Sistema, s);

			System.out.println("sim");
			return parametros_do_Sistema;
		} else {
			Calendar c = Calendar.getInstance();
			c.setTime(parametros_do_Sistema.getData());
			if (c.get(Calendar.DAY_OF_WEEK) == 6) {
				c.add(Calendar.DAY_OF_MONTH, 2);
			} else {
				c.add(Calendar.DAY_OF_MONTH, 1);
			}
			Date date = c.getTime();
			parametros_do_Sistema.setData(date);
			parametros_do_Sistema.setUltimo_atendimento(0);
			fachada.atualizar_parametros_do_sistema(parametros_do_Sistema, s);

			return parametros_do_Sistema;
		}

	}

}
